This invention deals with the area of collaborative software. Collaborative software provides systems which aid multiple users in performing a task that requires the skills and attention of a plurality of people.
One type of collaborative software is an annotation system. An annotation system is one where descriptive information is stored about objects, or parts of objects. An annotation store, typically a database, contains the descriptive information for the annotation, and an indexing scheme is used to map each annotation to the object or the position within the object.
Annotation systems may store the annotations within the target document's data stream, thus simplifying the tasks of discovery and retrieval of the annotations by the annotation system. Annotation systems which store annotations in that manner include the ‘comments’ functionality of the MICROSOFT Office suite of products or the ‘annotation’ markup feature of the Adobe Acrobat product.
Annotation systems may also store the annotations in a database independent of the target document's data stream, thus simplifying advanced queries across all annotation data and allowing annotation of read-only target documents. Annotation systems which store annotations in this manner include the IBM® INSIGHTLINK product and the systems described in the U.S. patent application Ser. No. 10/600,014, “Universal Annotation Management System”.
Annotation systems are in high demand in Life Sciences and biotech, but not limited solely to that domain.
Annotations systems are used to gather comments, that is, metadata, about some target data. Many annotation systems simply present a simple text field for users to insert free form comments. More advanced annotation systems present the user with multiple fields so that the user creates a structured annotation. When annotations are structured, the information becomes easier to index and query.
Today, annotation systems are simply used in a simplistic model where users input information of interest into annotations for the benefit of users, at a later time, who find this extra information and make use of the annotation's recorded insight. Essentially, users are asked to enter annotations for a possible benefit which will help a possible future user. That is the interaction model presented by current annotation systems. This model has multiple problems. Often users consider annotating a document a burden. The current annotation model does not help the user achieve any task directly and thus the user often perceives little value in putting forth the effort to annotate documents. If user's see direct benefit from annotations, such as in the special case where the annotations are intended for the same user who is annotating, as is taking notes upon a lecture, then the user is more likely to annotate a document. Even when a user does annotate documents within the current annotation model, the quality of the annotation suffers since the user cannot anticipate the future user that will read their annotations. This future user may be performing a very different task from the annotator. If the annotator had knowledge of the task and role of the future readers of his annotations, in essence, his audience, the annotator could more effectively mark up the document. Thus, there is a need for an annotation system which creates a new paradigm for annotations, a system that gives immediate benefit to the annotator by helping to accomplish the user's task and a system where the annotator knows more about the audience for his annotations and can thus create more effective annotations.
U.S. Pat. No. 5,239,366 “System for selectively routing and merging independent annotations to a document at remote locations” Filed Oct. 4, 1990 and incorporated herein by reference deals with using annotations as sticky notes to conduct communication over long (physical) distances. This is accomplished by allowing annotations containing pointers to original documents to be sent singularly or in groups and reassembled at the receiving end by a “personal communicating computer.” This patent does not deal with structured annotations, and does not provide the well-defined and structured multi-user semantics that comprise the novel combination of target-data-independent annotation combined with workflow. Furthermore, this invention only relates annotations together via a grouping mechanism. It does not allow for additional semantic workflow information to be-associated (within the system) with a series of annotations (or a single annotation over its lifetime) on a target object.
U.S. Pat. No. 6,240,429 “Using attached properties to provide document services” Filed Aug. 31, 1998 and incorporated herein by reference provides for associating key-value properties with documents within a document-management system. As such, this invention requires that all data objects to which properties or code may be attached must exist within a document management system. (This limitation exists because the properties and executable code are accessed via file operations such as ‘read’.) This is a significant limitation because the properties and workflow information are part of data object.
Another type of collaborative software is workflow software. Workflow systems provide a way to automatically coordinate a task where different users accomplish individual portions of the task. A workflow system is a collaborative pipeline, where a process flow with a number of steps is implemented and includes means for notification at each step that action should be taken by a particular actor (actor could be a user or a program), and on the completion of the step, the next stage in the pipeline flow is invoked or informed. For example, a workflow system might be configured to automatically coordinate the task of fulfilling a customer order placed by telephone. In such a case, the workflow system might be configured to receive order or payment information from the telephone operator. The workflow system may then send a notification of pending work to the shipping department. Workflow systems typically show a personalized pending work list to each user. Once the item is shipped the shipping department marks their portion as complete in the workflow system and the system automatically sends a notification to the accounting department. This simple example illustrates how a workflow system can be configured with the steps in a specific task and the specific users involved in each portion of the task. The workflow system can then coordinate the execution of the task using notifications and task lists as the central interaction mechanisms. The limitations of the typical workflow software paradigm become apparent with tasks that are heavily based around data or a document. For example, the task of evaluating a candidate for a new position. This task is heavily related to the job application or resume as the key target document. At each step in the workflow, the document is referenced by the users. Typical workflow systems would separate the task from the document, simply referencing the document as an ‘attachment’ for reference by the users. This is in contrast to annotation systems which tightly couple the users' comments and judgments with the document itself. Thus there exists room for an improved workflow system where annotation is a key paradigm to accomplish the tasks in the workflow.
The key problem in current art is that annotation systems ignore the idea of workflow and tasks while workflow systems ignore the idea of annotation as a useful model for collaboration. Our invention merges these two collaboration approaches to provide an improved collaboration system.